find_package(
	Doxygen
	REQUIRED
)

set(
	DOC_OUTPUT
	"${CMAKE_BINARY_DIR}/doc_generated"
)

set(
	DOC_INCLUDE_DIRS
	"${FCPPT_UTILS_PROJECT_SOURCE_DIR}/include"
)

configure_file(
	Doxyfile.in
	"${DOC_OUTPUT}/Doxyfile"
)

# For now, use COPYONLY (since I don't know which escape sequences are in the
# html/css files that cmake might accidentally replace. Could be changed in
# the future.
configure_file(
	header.html
	"${DOC_OUTPUT}/header.html"
	COPYONLY
)

configure_file(
	footer.html
	"${DOC_OUTPUT}/footer.html"
	COPYONLY
)

configure_file(
	stylesheet.css
	"${DOC_OUTPUT}/stylesheet.css"
	COPYONLY
)

configure_file(
	layout.xml
	"${DOC_OUTPUT}/layout.xml"
	COPYONLY
)

set(
	FCPPT_DOC_FILES
	doc/CMakeLists.txt
	doc/Doxyfile.in
	doc/files/changes.doxygen
	doc/files/changes_old.doxygen
	doc/files/coding_style.doxygen
	doc/files/coding_style_asthetic.doxygen
	doc/files/logo.svg
	doc/files/main.doxygen
	doc/files/modules/algorithm.doxygen
	doc/files/modules/assert.doxygen
	doc/files/modules/assign.doxygen
	doc/files/modules/bit.doxygen
	doc/files/modules/casts.doxygen
	doc/files/modules/config.doxygen
	doc/files/modules/container/base.doxygen
	doc/files/modules/container/bitfield.doxygen
	doc/files/modules/container/grid.doxygen
	doc/files/modules/container/raw_vector.doxygen
	doc/files/modules/container/tree.doxygen
	doc/files/modules/either.doxygen
	doc/files/modules/endianness.doxygen
	doc/files/modules/enum.doxygen
	doc/files/modules/export.doxygen
	doc/files/modules/fcppt.doxygen
	doc/files/modules/filesystem.doxygen
	doc/files/modules/io.doxygen
	doc/files/modules/literal.doxygen
	doc/files/modules/log.doxygen
	doc/files/modules/math/base.doxygen
	doc/files/modules/math/box.doxygen
	doc/files/modules/math/dim.doxygen
	doc/files/modules/math/matrix.doxygen
	doc/files/modules/math/sphere.doxygen
	doc/files/modules/math/vector.doxygen
	doc/files/modules/mpl.doxygen
	doc/files/modules/optional.doxygen
	doc/files/modules/preprocessor.doxygen
	doc/files/modules/random.doxygen
	doc/files/modules/ref.doxygen
	doc/files/modules/signal.doxygen
	doc/files/modules/smartptr.doxygen
	doc/files/modules/string.doxygen
	doc/files/modules/strong_typedef.doxygen
	doc/files/modules/time.doxygen
	doc/files/modules/type_iso.doxygen
	doc/files/modules/type_traits.doxygen
	doc/files/modules/variant.doxygen
	doc/files/modules/various.doxygen
	doc/files/requirements.doxygen
	doc/files/types_injected_from_boost.hpp
	doc/footer.html
	doc/header.html
	doc/images/grid_row_major.svg
	doc/images/logo.svg
	doc/images/signal_benchmark.svg
	doc/layout.xml
	doc/stylesheet.css
	examples/algorithm.cpp
	examples/assert.cpp
	examples/assert_complete.cpp
	examples/assign.cpp
	examples/backtrace.cpp
	examples/cast.cpp
	examples/cast/dynamic.cpp
	examples/cast/safe_numeric.cpp
	examples/cast/truncation_check.cpp
	examples/codecvt.cpp
	examples/coding_style.cpp
	examples/coding_style_asthetic.cpp
	examples/config.cpp
	examples/container/bitfield.cpp
	examples/container/grid.cpp
	examples/container/grid_iteration.cpp
	examples/container/grid_range.cpp
	examples/container/raw_vector.cpp
	examples/container/tree_simple.cpp
	examples/container/tree_traversal.cpp
	examples/cyclic_iterator.cpp
	examples/either.cpp
	examples/endianness.cpp
	examples/enum.cpp
	examples/homogenous_pair.cpp
	examples/io/endianness.cpp
	examples/io/scoped_rdbuf.cpp
	examples/literal.cpp
	examples/log.cpp
	examples/log/complex.cpp
	examples/log/context.cpp
	examples/log/formatting.cpp
	examples/log/helloworld.cpp
	examples/math/box.cpp
	examples/math/casts.cpp
	examples/math/dim.cpp
	examples/math/matrix.cpp
	examples/math/utility.cpp
	examples/math/vector.cpp
	examples/math/vector/access.cpp
	examples/math/vector/arithmetic.cpp
	examples/math/vector/basic.cpp
	examples/math/vector/convert.cpp
	examples/math/vector/various.cpp
	examples/mpl/for_each.cpp
	examples/mpl/invoke_on.cpp
	examples/mpl/various.cpp
	examples/noncopyable.cpp
	examples/optional.cpp
	examples/output_tm.cpp
	examples/preprocessor/printing.cpp
	examples/preprocessor/warning.cpp
	examples/random/complex.cpp
	examples/random/enum.cpp
	examples/random/simple.cpp
	examples/random/strong_typedef.cpp
	examples/random/transform.cpp
	examples/shared_ptr.cpp
	examples/signal/benchmark.cpp
	examples/signal/combine.cpp
	examples/signal/connection.cpp
	examples/signal/simple.cpp
	examples/signal/unregister.cpp
	examples/smart_ptr_deleter.cpp
	examples/string.cpp
	examples/string_conversion.cpp
	examples/strong_typedef.cpp
	examples/type_iso.cpp
	examples/type_traits.cpp
	examples/unique_ptr.cpp
	examples/variant/binary_visitation.cpp
	examples/variant/motivation.cpp
	examples/variant/nonconst_visitation.cpp
	examples/variant/visitation.cpp
	examples/version.cpp
	examples/visibility.cpp
	examples/weak_ptr.cpp
	include/fcppt/absurd.hpp
	include/fcppt/algorithm/all_of.hpp
	include/fcppt/algorithm/append.hpp
	include/fcppt/algorithm/array_binary_map.hpp
	include/fcppt/algorithm/array_init.hpp
	include/fcppt/algorithm/array_init_const.hpp
	include/fcppt/algorithm/array_init_move.hpp
	include/fcppt/algorithm/array_map.hpp
	include/fcppt/algorithm/array_push_back.hpp
	include/fcppt/algorithm/contains.hpp
	include/fcppt/algorithm/contains_if.hpp
	include/fcppt/algorithm/detail/array_push_back_function.hpp
	include/fcppt/algorithm/detail/has_random_access_iterator.hpp
	include/fcppt/algorithm/detail/has_reserve.hpp
	include/fcppt/algorithm/detail/has_size.hpp
	include/fcppt/algorithm/detail/join_all.hpp
	include/fcppt/algorithm/detail/join_impl.hpp
	include/fcppt/algorithm/detail/map_concat.hpp
	include/fcppt/algorithm/detail/map_reserve.hpp
	include/fcppt/algorithm/detail/optimize_map.hpp
	include/fcppt/algorithm/detail/source_size.hpp
	include/fcppt/algorithm/detail/tuple_loop_break.hpp
	include/fcppt/algorithm/detail/vararg_map.hpp
	include/fcppt/algorithm/enum_array_init.hpp
	include/fcppt/algorithm/find_by_opt.hpp
	include/fcppt/algorithm/find_if_opt.hpp
	include/fcppt/algorithm/find_opt.hpp
	include/fcppt/algorithm/fold.hpp
	include/fcppt/algorithm/generate_n.hpp
	include/fcppt/algorithm/index_of.hpp
	include/fcppt/algorithm/index_of_enum_array.hpp
	include/fcppt/algorithm/join.hpp
	include/fcppt/algorithm/join_strings.hpp
	include/fcppt/algorithm/key_set.hpp
	include/fcppt/algorithm/levenshtein.hpp
	include/fcppt/algorithm/loop.hpp
	include/fcppt/algorithm/loop_break.hpp
	include/fcppt/algorithm/loop_break_impl.hpp
	include/fcppt/algorithm/loop_break_impl_fwd.hpp
	include/fcppt/algorithm/loop_break_mpl.hpp
	include/fcppt/algorithm/loop_break_tuple.hpp
	include/fcppt/algorithm/map.hpp
	include/fcppt/algorithm/map_concat.hpp
	include/fcppt/algorithm/map_iteration.hpp
	include/fcppt/algorithm/map_iteration_second.hpp
	include/fcppt/algorithm/map_optional.hpp
	include/fcppt/algorithm/range_element_type.hpp
	include/fcppt/algorithm/remove.hpp
	include/fcppt/algorithm/remove_if.hpp
	include/fcppt/algorithm/repeat.hpp
	include/fcppt/algorithm/sequence_iteration.hpp
	include/fcppt/algorithm/set_difference.hpp
	include/fcppt/algorithm/set_intersection.hpp
	include/fcppt/algorithm/set_union.hpp
	include/fcppt/algorithm/shortest_levenshtein.hpp
	include/fcppt/algorithm/update_action.hpp
	include/fcppt/algorithm/update_action_fwd.hpp
	include/fcppt/algorithm/vararg_map.hpp
	include/fcppt/args.hpp
	include/fcppt/args_vector.hpp
	include/fcppt/assert/basic/conditional.hpp
	include/fcppt/assert/basic/conditional_message.hpp
	include/fcppt/assert/basic/default_message.hpp
	include/fcppt/assert/basic/gather_information.hpp
	include/fcppt/assert/basic/message_and_action.hpp
	include/fcppt/assert/basic/print_message.hpp
	include/fcppt/assert/basic/terminate_conditional.hpp
	include/fcppt/assert/basic/terminate_message.hpp
	include/fcppt/assert/basic/terminate_message_conditional.hpp
	include/fcppt/assert/basic/unconditional.hpp
	include/fcppt/assert/basic/unconditional_message.hpp
	include/fcppt/assert/condition.hpp
	include/fcppt/assert/error.hpp
	include/fcppt/assert/error_message.hpp
	include/fcppt/assert/exception.hpp
	include/fcppt/assert/file.hpp
	include/fcppt/assert/function.hpp
	include/fcppt/assert/impl/exception.hpp
	include/fcppt/assert/impl/information.hpp
	include/fcppt/assert/information.hpp
	include/fcppt/assert/information_fwd.hpp
	include/fcppt/assert/line.hpp
	include/fcppt/assert/make_message.hpp
	include/fcppt/assert/message.hpp
	include/fcppt/assert/optional_error.hpp
	include/fcppt/assert/post.hpp
	include/fcppt/assert/post_message.hpp
	include/fcppt/assert/pre.hpp
	include/fcppt/assert/pre_message.hpp
	include/fcppt/assert/throw.hpp
	include/fcppt/assert/throw_message.hpp
	include/fcppt/assert/unimplemented_message.hpp
	include/fcppt/assert/unreachable.hpp
	include/fcppt/assert/unreachable_message.hpp
	include/fcppt/assert_complete.hpp
	include/fcppt/assign/detail/make_container_opt.hpp
	include/fcppt/assign/detail/make_opt.hpp
	include/fcppt/assign/impl/make_container.hpp
	include/fcppt/assign/impl/make_map.hpp
	include/fcppt/assign/make_container.hpp
	include/fcppt/assign/make_container_opt.hpp
	include/fcppt/assign/make_map.hpp
	include/fcppt/backtrace/current_stack_frame.hpp
	include/fcppt/backtrace/print_current_stack_frame.hpp
	include/fcppt/backtrace/stack_frame.hpp
	include/fcppt/backtrace/stack_limit.hpp
	include/fcppt/bit/mask.hpp
	include/fcppt/bit/mask_c.hpp
	include/fcppt/bit/mask_decl.hpp
	include/fcppt/bit/mask_fwd.hpp
	include/fcppt/bit/mask_impl.hpp
	include/fcppt/bit/shift_count.hpp
	include/fcppt/bit/shifted_mask.hpp
	include/fcppt/bit/shifted_mask_c.hpp
	include/fcppt/bit/test.hpp
	include/fcppt/boost_units_value.hpp
	include/fcppt/c_deleter.hpp
	include/fcppt/c_deleter_fwd.hpp
	include/fcppt/cast/apply.hpp
	include/fcppt/cast/apply_fun.hpp
	include/fcppt/cast/bad_dynamic.hpp
	include/fcppt/cast/bad_truncation_check.hpp
	include/fcppt/cast/detail/safe.hpp
	include/fcppt/cast/detail/truncation_check.hpp
	include/fcppt/cast/dynamic.hpp
	include/fcppt/cast/enum_to_int.hpp
	include/fcppt/cast/enum_to_underlying.hpp
	include/fcppt/cast/float_to_int.hpp
	include/fcppt/cast/float_to_int_fun.hpp
	include/fcppt/cast/from_void_ptr.hpp
	include/fcppt/cast/impl/bad_dynamic.hpp
	include/fcppt/cast/impl/bad_truncation_check.hpp
	include/fcppt/cast/int_to_enum.hpp
	include/fcppt/cast/int_to_enum_fun.hpp
	include/fcppt/cast/int_to_float.hpp
	include/fcppt/cast/int_to_float_fun.hpp
	include/fcppt/cast/promote.hpp
	include/fcppt/cast/safe.hpp
	include/fcppt/cast/safe_numeric.hpp
	include/fcppt/cast/size.hpp
	include/fcppt/cast/size_fun.hpp
	include/fcppt/cast/static_cast_fun.hpp
	include/fcppt/cast/static_downcast.hpp
	include/fcppt/cast/static_downcast_ptr.hpp
	include/fcppt/cast/to_char_ptr.hpp
	include/fcppt/cast/to_signed.hpp
	include/fcppt/cast/to_signed_fun.hpp
	include/fcppt/cast/to_unsigned.hpp
	include/fcppt/cast/to_unsigned_fun.hpp
	include/fcppt/cast/to_void.hpp
	include/fcppt/cast/to_void_ptr.hpp
	include/fcppt/cast/truncation_check.hpp
	include/fcppt/cast/try_dynamic.hpp
	include/fcppt/cast_to_enum.hpp
	include/fcppt/cast_to_enum_exn.hpp
	include/fcppt/char_type.hpp
	include/fcppt/check_literal_conversion.hpp
	include/fcppt/com_deleter.hpp
	include/fcppt/com_deleter_fwd.hpp
	include/fcppt/config/clang_version_at_least.hpp
	include/fcppt/config/compiler.hpp
	include/fcppt/config/external_begin.hpp
	include/fcppt/config/external_end.hpp
	include/fcppt/config/gcc_version_at_least.hpp
	include/fcppt/config/platform.hpp
	include/fcppt/const.hpp
	include/fcppt/const_pointer_cast.hpp
	include/fcppt/container/array_size.hpp
	include/fcppt/container/at_optional.hpp
	include/fcppt/container/bitfield/array.hpp
	include/fcppt/container/bitfield/comparison.hpp
	include/fcppt/container/bitfield/default_internal_type.hpp
	include/fcppt/container/bitfield/detail/element_bits.hpp
	include/fcppt/container/bitfield/detail/null_array.hpp
	include/fcppt/container/bitfield/hash.hpp
	include/fcppt/container/bitfield/hash_decl.hpp
	include/fcppt/container/bitfield/hash_fwd.hpp
	include/fcppt/container/bitfield/hash_impl.hpp
	include/fcppt/container/bitfield/is_subset_eq.hpp
	include/fcppt/container/bitfield/object.hpp
	include/fcppt/container/bitfield/object_decl.hpp
	include/fcppt/container/bitfield/object_from_enum.hpp
	include/fcppt/container/bitfield/object_fwd.hpp
	include/fcppt/container/bitfield/object_impl.hpp
	include/fcppt/container/bitfield/operators.hpp
	include/fcppt/container/bitfield/proxy.hpp
	include/fcppt/container/bitfield/proxy_decl.hpp
	include/fcppt/container/bitfield/proxy_fwd.hpp
	include/fcppt/container/bitfield/proxy_impl.hpp
	include/fcppt/container/bitfield/std_hash.hpp
	include/fcppt/container/bitfield/underlying_value.hpp
	include/fcppt/container/bitfield/value_type.hpp
	include/fcppt/container/data.hpp
	include/fcppt/container/data_end.hpp
	include/fcppt/container/detail/array_size.hpp
	include/fcppt/container/enum_array.hpp
	include/fcppt/container/enum_array_comparison.hpp
	include/fcppt/container/enum_array_decl.hpp
	include/fcppt/container/enum_array_fwd.hpp
	include/fcppt/container/enum_array_impl.hpp
	include/fcppt/container/exception.hpp
	include/fcppt/container/find_opt.hpp
	include/fcppt/container/find_opt_iterator.hpp
	include/fcppt/container/find_opt_mapped.hpp
	include/fcppt/container/get_or_insert.hpp
	include/fcppt/container/get_or_insert_result.hpp
	include/fcppt/container/get_or_insert_result_decl.hpp
	include/fcppt/container/get_or_insert_result_fwd.hpp
	include/fcppt/container/get_or_insert_result_impl.hpp
	include/fcppt/container/get_or_insert_with_result.hpp
	include/fcppt/container/grid/apply.hpp
	include/fcppt/container/grid/at_optional.hpp
	include/fcppt/container/grid/clamped_min.hpp
	include/fcppt/container/grid/clamped_sup.hpp
	include/fcppt/container/grid/clamped_sup_signed.hpp
	include/fcppt/container/grid/comparison.hpp
	include/fcppt/container/grid/detail/assign_fill_recurse.hpp
	include/fcppt/container/grid/detail/assign_recurse.hpp
	include/fcppt/container/grid/detail/fill.hpp
	include/fcppt/container/grid/detail/interpolate.hpp
	include/fcppt/container/grid/detail/pos_iterator_base.hpp
	include/fcppt/container/grid/detail/pos_ref_iterator_base.hpp
	include/fcppt/container/grid/detail/print_recurse.hpp
	include/fcppt/container/grid/detail/resize.hpp
	include/fcppt/container/grid/detail/shrink_to_fit.hpp
	include/fcppt/container/grid/detail/spiral_iterator_base.hpp
	include/fcppt/container/grid/dim.hpp
	include/fcppt/container/grid/dim_fwd.hpp
	include/fcppt/container/grid/end_position.hpp
	include/fcppt/container/grid/fill.hpp
	include/fcppt/container/grid/in_range.hpp
	include/fcppt/container/grid/in_range_dim.hpp
	include/fcppt/container/grid/interpolate.hpp
	include/fcppt/container/grid/is_object.hpp
	include/fcppt/container/grid/make_min.hpp
	include/fcppt/container/grid/make_pos_range.hpp
	include/fcppt/container/grid/make_pos_range_start_end.hpp
	include/fcppt/container/grid/make_pos_ref_crange.hpp
	include/fcppt/container/grid/make_pos_ref_crange_start_end.hpp
	include/fcppt/container/grid/make_pos_ref_range.hpp
	include/fcppt/container/grid/make_pos_ref_range_start_end.hpp
	include/fcppt/container/grid/make_spiral_range.hpp
	include/fcppt/container/grid/make_sup.hpp
	include/fcppt/container/grid/map.hpp
	include/fcppt/container/grid/min.hpp
	include/fcppt/container/grid/min_from_pos.hpp
	include/fcppt/container/grid/min_from_pos_fwd.hpp
	include/fcppt/container/grid/min_fwd.hpp
	include/fcppt/container/grid/min_less_sup.hpp
	include/fcppt/container/grid/min_tag.hpp
	include/fcppt/container/grid/moore_neighbor_array.hpp
	include/fcppt/container/grid/moore_neighbors.hpp
	include/fcppt/container/grid/neumann_neighbor_array.hpp
	include/fcppt/container/grid/neumann_neighbors.hpp
	include/fcppt/container/grid/next_position.hpp
	include/fcppt/container/grid/object.hpp
	include/fcppt/container/grid/object_decl.hpp
	include/fcppt/container/grid/object_fwd.hpp
	include/fcppt/container/grid/object_impl.hpp
	include/fcppt/container/grid/offset.hpp
	include/fcppt/container/grid/output.hpp
	include/fcppt/container/grid/pos.hpp
	include/fcppt/container/grid/pos_fwd.hpp
	include/fcppt/container/grid/pos_iterator_decl.hpp
	include/fcppt/container/grid/pos_iterator_fwd.hpp
	include/fcppt/container/grid/pos_iterator_impl.hpp
	include/fcppt/container/grid/pos_range.hpp
	include/fcppt/container/grid/pos_range_decl.hpp
	include/fcppt/container/grid/pos_range_fwd.hpp
	include/fcppt/container/grid/pos_range_impl.hpp
	include/fcppt/container/grid/pos_ref_iterator_decl.hpp
	include/fcppt/container/grid/pos_ref_iterator_fwd.hpp
	include/fcppt/container/grid/pos_ref_iterator_impl.hpp
	include/fcppt/container/grid/pos_ref_range.hpp
	include/fcppt/container/grid/pos_ref_range_decl.hpp
	include/fcppt/container/grid/pos_ref_range_fwd.hpp
	include/fcppt/container/grid/pos_ref_range_impl.hpp
	include/fcppt/container/grid/pos_reference.hpp
	include/fcppt/container/grid/pos_reference_decl.hpp
	include/fcppt/container/grid/pos_reference_fwd.hpp
	include/fcppt/container/grid/pos_reference_impl.hpp
	include/fcppt/container/grid/range_dim.hpp
	include/fcppt/container/grid/range_size.hpp
	include/fcppt/container/grid/resize_preserve.hpp
	include/fcppt/container/grid/resize_preserve_init.hpp
	include/fcppt/container/grid/size_type.hpp
	include/fcppt/container/grid/spiral_iterator_decl.hpp
	include/fcppt/container/grid/spiral_iterator_fwd.hpp
	include/fcppt/container/grid/spiral_iterator_impl.hpp
	include/fcppt/container/grid/spiral_range_decl.hpp
	include/fcppt/container/grid/spiral_range_fwd.hpp
	include/fcppt/container/grid/spiral_range_impl.hpp
	include/fcppt/container/grid/sup.hpp
	include/fcppt/container/grid/sup_from_pos.hpp
	include/fcppt/container/grid/sup_from_pos_fwd.hpp
	include/fcppt/container/grid/sup_fwd.hpp
	include/fcppt/container/grid/sup_tag.hpp
	include/fcppt/container/impl/exception.hpp
	include/fcppt/container/impl/out_of_range.hpp
	include/fcppt/container/index_map.hpp
	include/fcppt/container/index_map_decl.hpp
	include/fcppt/container/index_map_fwd.hpp
	include/fcppt/container/index_map_impl.hpp
	include/fcppt/container/is_raw_vector.hpp
	include/fcppt/container/is_std_vector.hpp
	include/fcppt/container/maybe_back.hpp
	include/fcppt/container/maybe_front.hpp
	include/fcppt/container/out_of_range.hpp
	include/fcppt/container/raw_vector.hpp
	include/fcppt/container/raw_vector_decl.hpp
	include/fcppt/container/raw_vector_fwd.hpp
	include/fcppt/container/raw_vector_impl.hpp
	include/fcppt/container/to_iterator_type.hpp
	include/fcppt/container/to_mapped_type.hpp
	include/fcppt/container/to_pointer_type.hpp
	include/fcppt/container/to_reference_type.hpp
	include/fcppt/container/to_value_type.hpp
	include/fcppt/container/tree/child_position.hpp
	include/fcppt/container/tree/comparison.hpp
	include/fcppt/container/tree/depth.hpp
	include/fcppt/container/tree/detail/copy_children.hpp
	include/fcppt/container/tree/detail/move_children.hpp
	include/fcppt/container/tree/detail/print.hpp
	include/fcppt/container/tree/is_object.hpp
	include/fcppt/container/tree/level.hpp
	include/fcppt/container/tree/map.hpp
	include/fcppt/container/tree/object.hpp
	include/fcppt/container/tree/object_decl.hpp
	include/fcppt/container/tree/object_fwd.hpp
	include/fcppt/container/tree/object_impl.hpp
	include/fcppt/container/tree/optional_ref.hpp
	include/fcppt/container/tree/optional_ref_decl.hpp
	include/fcppt/container/tree/optional_ref_fwd.hpp
	include/fcppt/container/tree/optional_ref_impl.hpp
	include/fcppt/container/tree/pre_order.hpp
	include/fcppt/container/tree/print.hpp
	include/fcppt/container/tree/to_root.hpp
	include/fcppt/cyclic_iterator.hpp
	include/fcppt/cyclic_iterator_decl.hpp
	include/fcppt/cyclic_iterator_fwd.hpp
	include/fcppt/cyclic_iterator_impl.hpp
	include/fcppt/decltype_sink.hpp
	include/fcppt/default_deleter.hpp
	include/fcppt/default_deleter_fwd.hpp
	include/fcppt/detail/call_destructor.hpp
	include/fcppt/detail/char_type.hpp
	include/fcppt/detail/check_cpp.hpp
	include/fcppt/detail/const.hpp
	include/fcppt/detail/cyclic_iterator_base.hpp
	include/fcppt/detail/decltype_sink.hpp
	include/fcppt/detail/enum_iterator_base.hpp
	include/fcppt/detail/equal.hpp
	include/fcppt/detail/equal_functor.hpp
	include/fcppt/detail/int_iterator_base.hpp
	include/fcppt/detail/make_shared_wrapper.hpp
	include/fcppt/detail/make_shared_wrapper_fwd.hpp
	include/fcppt/detail/move_if.hpp
	include/fcppt/detail/move_if_rvalue.hpp
	include/fcppt/detail/move_iterator_if_rvalue.hpp
	include/fcppt/detail/nonassignable.hpp
	include/fcppt/detail/noncopyable.hpp
	include/fcppt/detail/placement_new.hpp
	include/fcppt/detail/strong_typedef/assignment_operator.hpp
	include/fcppt/detail/strong_typedef/binary_operator.hpp
	include/fcppt/detail/strong_typedef/cast.hpp
	include/fcppt/detail/strong_typedef/comparison_operator.hpp
	include/fcppt/detail/strong_typedef/foreach_assignment_operator.hpp
	include/fcppt/detail/strong_typedef/foreach_inc_dec_operator.hpp
	include/fcppt/detail/strong_typedef/friend_assignment_operator.hpp
	include/fcppt/detail/strong_typedef/friend_operators.hpp
	include/fcppt/detail/strong_typedef/friend_pre_inc_dec_operator.hpp
	include/fcppt/detail/strong_typedef/post_inc_dec_operator.hpp
	include/fcppt/detail/strong_typedef/pre_inc_dec_operator.hpp
	include/fcppt/detail/strong_typedef/unary_operator.hpp
	include/fcppt/detail/tag_type.hpp
	include/fcppt/detail/text.hpp
	include/fcppt/detail/void.hpp
	include/fcppt/dynamic_pointer_cast.hpp
	include/fcppt/either/apply.hpp
	include/fcppt/either/bind.hpp
	include/fcppt/either/comparison.hpp
	include/fcppt/either/detail/first_failure.hpp
	include/fcppt/either/from_optional.hpp
	include/fcppt/either/is_object.hpp
	include/fcppt/either/map.hpp
	include/fcppt/either/match.hpp
	include/fcppt/either/object.hpp
	include/fcppt/either/object_decl.hpp
	include/fcppt/either/object_fwd.hpp
	include/fcppt/either/object_impl.hpp
	include/fcppt/either/output.hpp
	include/fcppt/either/sequence.hpp
	include/fcppt/either/success_opt.hpp
	include/fcppt/either/to_exception.hpp
	include/fcppt/endianness/convert.hpp
	include/fcppt/endianness/format.hpp
	include/fcppt/endianness/format_fwd.hpp
	include/fcppt/endianness/host_format.hpp
	include/fcppt/endianness/is_big_endian.hpp
	include/fcppt/endianness/is_little_endian.hpp
	include/fcppt/endianness/raw_pointer.hpp
	include/fcppt/endianness/raw_value.hpp
	include/fcppt/endianness/reverse_mem.hpp
	include/fcppt/endianness/size_type.hpp
	include/fcppt/endianness/swap.hpp
	include/fcppt/enum_iterator_decl.hpp
	include/fcppt/enum_iterator_fwd.hpp
	include/fcppt/enum_iterator_impl.hpp
	include/fcppt/enum_max_value.hpp
	include/fcppt/enum_max_value_fwd.hpp
	include/fcppt/enum_min_value.hpp
	include/fcppt/enum_min_value_fwd.hpp
	include/fcppt/enum_range_decl.hpp
	include/fcppt/enum_range_fwd.hpp
	include/fcppt/enum_range_impl.hpp
	include/fcppt/enum_size.hpp
	include/fcppt/enum_size_fwd.hpp
	include/fcppt/enum_size_type.hpp
	include/fcppt/enum_size_type_fwd.hpp
	include/fcppt/error/strerrno.hpp
	include/fcppt/error/strerror.hpp
	include/fcppt/exception.hpp
	include/fcppt/extract_from_string.hpp
	include/fcppt/filesystem/create_directories_recursive_exn.hpp
	include/fcppt/filesystem/create_directory_exn.hpp
	include/fcppt/filesystem/create_directory_failed.hpp
	include/fcppt/filesystem/exception.hpp
	include/fcppt/filesystem/extension.hpp
	include/fcppt/filesystem/extension_without_dot.hpp
	include/fcppt/filesystem/file_to_string.hpp
	include/fcppt/filesystem/impl/create_directory_failed.hpp
	include/fcppt/filesystem/impl/exception.hpp
	include/fcppt/filesystem/is_executable.hpp
	include/fcppt/filesystem/normalize.hpp
	include/fcppt/filesystem/num_subpaths.hpp
	include/fcppt/filesystem/path_to_string.hpp
	include/fcppt/filesystem/remove_extension.hpp
	include/fcppt/filesystem/replace_extension.hpp
	include/fcppt/filesystem/stem.hpp
	include/fcppt/filesystem/strip_prefix.hpp
	include/fcppt/format.hpp
	include/fcppt/from_std_string.hpp
	include/fcppt/from_std_string_locale.hpp
	include/fcppt/from_std_wstring.hpp
	include/fcppt/from_std_wstring_locale.hpp
	include/fcppt/function.hpp
	include/fcppt/function_decl.hpp
	include/fcppt/function_fwd.hpp
	include/fcppt/function_impl.hpp
	include/fcppt/getenv.hpp
	include/fcppt/homogenous_pair.hpp
	include/fcppt/homogenous_pair_comparison.hpp
	include/fcppt/homogenous_pair_decl.hpp
	include/fcppt/homogenous_pair_fwd.hpp
	include/fcppt/homogenous_pair_impl.hpp
	include/fcppt/homogenous_pair_output.hpp
	include/fcppt/identity.hpp
	include/fcppt/impl/exception.hpp
	include/fcppt/insert_to_fcppt_string.hpp
	include/fcppt/insert_to_std_string.hpp
	include/fcppt/insert_to_std_wstring.hpp
	include/fcppt/insert_to_string.hpp
	include/fcppt/int_iterator_decl.hpp
	include/fcppt/int_iterator_fwd.hpp
	include/fcppt/int_iterator_impl.hpp
	include/fcppt/int_range_decl.hpp
	include/fcppt/int_range_fwd.hpp
	include/fcppt/int_range_impl.hpp
	include/fcppt/io/basic_scoped_rdbuf_decl.hpp
	include/fcppt/io/basic_scoped_rdbuf_fwd.hpp
	include/fcppt/io/basic_scoped_rdbuf_impl.hpp
	include/fcppt/io/buffer.hpp
	include/fcppt/io/buffer_fwd.hpp
	include/fcppt/io/cerr.hpp
	include/fcppt/io/cin.hpp
	include/fcppt/io/clog.hpp
	include/fcppt/io/cout.hpp
	include/fcppt/io/expect.hpp
	include/fcppt/io/fstream.hpp
	include/fcppt/io/get.hpp
	include/fcppt/io/ifstream.hpp
	include/fcppt/io/istream.hpp
	include/fcppt/io/istringstream.hpp
	include/fcppt/io/ofstream.hpp
	include/fcppt/io/optional_buffer.hpp
	include/fcppt/io/optional_buffer_fwd.hpp
	include/fcppt/io/ostream.hpp
	include/fcppt/io/ostringstream.hpp
	include/fcppt/io/read.hpp
	include/fcppt/io/read_chars.hpp
	include/fcppt/io/scoped_rdbuf.hpp
	include/fcppt/io/scoped_rdbuf_fwd.hpp
	include/fcppt/io/stream_to_string.hpp
	include/fcppt/io/stringstream.hpp
	include/fcppt/io/write.hpp
	include/fcppt/is_strong_typedef.hpp
	include/fcppt/literal.hpp
	include/fcppt/log/_.hpp
	include/fcppt/log/activate_levels.hpp
	include/fcppt/log/activate_levels_recursive.hpp
	include/fcppt/log/context.hpp
	include/fcppt/log/context_fwd.hpp
	include/fcppt/log/context_location.hpp
	include/fcppt/log/context_location_fwd.hpp
	include/fcppt/log/deactivate_levels.hpp
	include/fcppt/log/deactivate_levels_recursive.hpp
	include/fcppt/log/debug.hpp
	include/fcppt/log/default_level_streams.hpp
	include/fcppt/log/define_context.hpp
	include/fcppt/log/define_object.hpp
	include/fcppt/log/detail/auto_context.hpp
	include/fcppt/log/detail/auto_context_fwd.hpp
	include/fcppt/log/detail/auto_context_rep.hpp
	include/fcppt/log/detail/auto_context_rep_fwd.hpp
	include/fcppt/log/detail/const_optional_context_tree_ref.hpp
	include/fcppt/log/detail/const_optional_context_tree_ref_fwd.hpp
	include/fcppt/log/detail/context_tree.hpp
	include/fcppt/log/detail/context_tree_fwd.hpp
	include/fcppt/log/detail/context_tree_node.hpp
	include/fcppt/log/detail/context_tree_node_fwd.hpp
	include/fcppt/log/detail/context_tree_node_variant.hpp
	include/fcppt/log/detail/context_tree_node_variant_fwd.hpp
	include/fcppt/log/detail/inner_context_node.hpp
	include/fcppt/log/detail/inner_context_node_fwd.hpp
	include/fcppt/log/detail/level_if_enabled.hpp
	include/fcppt/log/detail/location_vector.hpp
	include/fcppt/log/detail/optional_context_location.hpp
	include/fcppt/log/detail/optional_context_location_fwd.hpp
	include/fcppt/log/detail/optional_context_tree_ref.hpp
	include/fcppt/log/detail/optional_context_tree_ref_fwd.hpp
	include/fcppt/log/detail/outer_context_node.hpp
	include/fcppt/log/detail/outer_context_node_fwd.hpp
	include/fcppt/log/detail/output_helper.hpp
	include/fcppt/log/detail/temporary_output.hpp
	include/fcppt/log/detail/temporary_output_fwd.hpp
	include/fcppt/log/enabled_level_array.hpp
	include/fcppt/log/enabled_level_array_fwd.hpp
	include/fcppt/log/enabled_levels.hpp
	include/fcppt/log/error.hpp
	include/fcppt/log/exception.hpp
	include/fcppt/log/fatal.hpp
	include/fcppt/log/format/chain.hpp
	include/fcppt/log/format/default_level.hpp
	include/fcppt/log/format/function.hpp
	include/fcppt/log/format/function_fwd.hpp
	include/fcppt/log/format/inserter.hpp
	include/fcppt/log/format/optional_function.hpp
	include/fcppt/log/format/optional_function_fwd.hpp
	include/fcppt/log/format/prefix.hpp
	include/fcppt/log/format/time_stamp.hpp
	include/fcppt/log/impl/exception.hpp
	include/fcppt/log/impl/no_such_location.hpp
	include/fcppt/log/info.hpp
	include/fcppt/log/level.hpp
	include/fcppt/log/level_from_string.hpp
	include/fcppt/log/level_fwd.hpp
	include/fcppt/log/level_stream.hpp
	include/fcppt/log/level_stream_array.hpp
	include/fcppt/log/level_stream_array_fwd.hpp
	include/fcppt/log/level_stream_fwd.hpp
	include/fcppt/log/level_to_string.hpp
	include/fcppt/log/location.hpp
	include/fcppt/log/location_fwd.hpp
	include/fcppt/log/make_location.hpp
	include/fcppt/log/new_sink.hpp
	include/fcppt/log/no_such_location.hpp
	include/fcppt/log/object.hpp
	include/fcppt/log/object_fwd.hpp
	include/fcppt/log/optional_level.hpp
	include/fcppt/log/optional_level_fwd.hpp
	include/fcppt/log/optional_location.hpp
	include/fcppt/log/optional_location_fwd.hpp
	include/fcppt/log/optional_object.hpp
	include/fcppt/log/optional_object_fwd.hpp
	include/fcppt/log/parameters.hpp
	include/fcppt/log/parameters_fwd.hpp
	include/fcppt/log/print_all_locations.hpp
	include/fcppt/log/print_locations.hpp
	include/fcppt/log/tree_function.hpp
	include/fcppt/log/verbose.hpp
	include/fcppt/log/warning.hpp
	include/fcppt/loop.hpp
	include/fcppt/loop_fwd.hpp
	include/fcppt/major_version.hpp
	include/fcppt/make_cref.hpp
	include/fcppt/make_enum_range.hpp
	include/fcppt/make_enum_range_start.hpp
	include/fcppt/make_enum_range_start_end.hpp
	include/fcppt/make_homogenous_pair.hpp
	include/fcppt/make_int_range.hpp
	include/fcppt/make_int_range_count.hpp
	include/fcppt/make_literal_boost_units.hpp
	include/fcppt/make_literal_fundamental.hpp
	include/fcppt/make_literal_fwd.hpp
	include/fcppt/make_literal_strong_typedef.hpp
	include/fcppt/make_ref.hpp
	include/fcppt/make_shared_ptr.hpp
	include/fcppt/make_strong_typedef.hpp
	include/fcppt/make_unique_ptr.hpp
	include/fcppt/math/at_c.hpp
	include/fcppt/math/binary_map.hpp
	include/fcppt/math/box/center.hpp
	include/fcppt/math/box/comparison.hpp
	include/fcppt/math/box/componentwise_equal.hpp
	include/fcppt/math/box/contains.hpp
	include/fcppt/math/box/contains_point.hpp
	include/fcppt/math/box/corner_points.hpp
	include/fcppt/math/box/detail/init.hpp
	include/fcppt/math/box/distance.hpp
	include/fcppt/math/box/extend_bounding_box.hpp
	include/fcppt/math/box/has_dim.hpp
	include/fcppt/math/box/init_dim.hpp
	include/fcppt/math/box/init_max.hpp
	include/fcppt/math/box/intersection.hpp
	include/fcppt/math/box/intersects.hpp
	include/fcppt/math/box/interval.hpp
	include/fcppt/math/box/is_box.hpp
	include/fcppt/math/box/null.hpp
	include/fcppt/math/box/object.hpp
	include/fcppt/math/box/object_decl.hpp
	include/fcppt/math/box/object_fwd.hpp
	include/fcppt/math/box/object_impl.hpp
	include/fcppt/math/box/output.hpp
	include/fcppt/math/box/rect.hpp
	include/fcppt/math/box/rect_fwd.hpp
	include/fcppt/math/box/shrink.hpp
	include/fcppt/math/box/stretch_absolute.hpp
	include/fcppt/math/box/stretch_relative.hpp
	include/fcppt/math/box/structure_cast.hpp
	include/fcppt/math/bresenham.hpp
	include/fcppt/math/bresenham_thick.hpp
	include/fcppt/math/ceil_div.hpp
	include/fcppt/math/ceil_div_signed.hpp
	include/fcppt/math/clamp.hpp
	include/fcppt/math/deg_to_rad.hpp
	include/fcppt/math/detail/array_equal.hpp
	include/fcppt/math/detail/array_less.hpp
	include/fcppt/math/detail/assert_static_storage.hpp
	include/fcppt/math/detail/assign.hpp
	include/fcppt/math/detail/binary_type.hpp
	include/fcppt/math/detail/bresenham_impl.hpp
	include/fcppt/math/detail/bresenham_thick.hpp
	include/fcppt/math/detail/checked_access.hpp
	include/fcppt/math/detail/componentwise_equal.hpp
	include/fcppt/math/detail/construct.hpp
	include/fcppt/math/detail/copy.hpp
	include/fcppt/math/detail/diff.hpp
	include/fcppt/math/detail/dim_matches.hpp
	include/fcppt/math/detail/fill.hpp
	include/fcppt/math/detail/generate_binary_vectors.hpp
	include/fcppt/math/detail/has_size.hpp
	include/fcppt/math/detail/if_not_last_index.hpp
	include/fcppt/math/detail/index_at.hpp
	include/fcppt/math/detail/init.hpp
	include/fcppt/math/detail/init_function.hpp
	include/fcppt/math/detail/init_storage.hpp
	include/fcppt/math/detail/is_static_storage.hpp
	include/fcppt/math/detail/linear_access.hpp
	include/fcppt/math/detail/make_asymmetric_binary_operator.hpp
	include/fcppt/math/detail/make_asymmetric_binary_operator_right.hpp
	include/fcppt/math/detail/make_op_decl.hpp
	include/fcppt/math/detail/make_op_def.hpp
	include/fcppt/math/detail/make_symmetric_binary_operator.hpp
	include/fcppt/math/detail/make_unary_operator.hpp
	include/fcppt/math/detail/mod.hpp
	include/fcppt/math/detail/narrow_cast.hpp
	include/fcppt/math/detail/null_storage.hpp
	include/fcppt/math/detail/one_dimensional_input.hpp
	include/fcppt/math/detail/one_dimensional_output.hpp
	include/fcppt/math/detail/storage_size.hpp
	include/fcppt/math/detail/structure_cast.hpp
	include/fcppt/math/detail/to_different.hpp
	include/fcppt/math/detail/unary_type.hpp
	include/fcppt/math/diff.hpp
	include/fcppt/math/difference_type.hpp
	include/fcppt/math/dim/arithmetic.hpp
	include/fcppt/math/dim/comparison.hpp
	include/fcppt/math/dim/componentwise_equal.hpp
	include/fcppt/math/dim/construct.hpp
	include/fcppt/math/dim/contents.hpp
	include/fcppt/math/dim/fill.hpp
	include/fcppt/math/dim/has_dim.hpp
	include/fcppt/math/dim/init.hpp
	include/fcppt/math/dim/input.hpp
	include/fcppt/math/dim/is_dim.hpp
	include/fcppt/math/dim/is_quadratic.hpp
	include/fcppt/math/dim/map.hpp
	include/fcppt/math/dim/narrow_cast.hpp
	include/fcppt/math/dim/null.hpp
	include/fcppt/math/dim/object.hpp
	include/fcppt/math/dim/object_decl.hpp
	include/fcppt/math/dim/object_fwd.hpp
	include/fcppt/math/dim/object_impl.hpp
	include/fcppt/math/dim/output.hpp
	include/fcppt/math/dim/static.hpp
	include/fcppt/math/dim/static_fwd.hpp
	include/fcppt/math/dim/std_hash.hpp
	include/fcppt/math/dim/structure_cast.hpp
	include/fcppt/math/dim/to_signed.hpp
	include/fcppt/math/dim/to_unsigned.hpp
	include/fcppt/math/dim/to_vector.hpp
	include/fcppt/math/generate_binary_vectors.hpp
	include/fcppt/math/int_range.hpp
	include/fcppt/math/int_range_count.hpp
	include/fcppt/math/interpolation/linear.hpp
	include/fcppt/math/interpolation/linear_functor.hpp
	include/fcppt/math/interpolation/perlin_fifth_degree.hpp
	include/fcppt/math/interpolation/perlin_fifth_degree_functor.hpp
	include/fcppt/math/interpolation/trigonometric.hpp
	include/fcppt/math/interpolation/trigonometric_functor.hpp
	include/fcppt/math/interval_distance.hpp
	include/fcppt/math/is_power_of_2.hpp
	include/fcppt/math/log2.hpp
	include/fcppt/math/map.hpp
	include/fcppt/math/matrix/adjugate.hpp
	include/fcppt/math/matrix/arithmetic.hpp
	include/fcppt/math/matrix/at_c.hpp
	include/fcppt/math/matrix/comparison.hpp
	include/fcppt/math/matrix/componentwise_equal.hpp
	include/fcppt/math/matrix/delete_row_and_column.hpp
	include/fcppt/math/matrix/delete_row_and_column_static.hpp
	include/fcppt/math/matrix/detail/deleted_index.hpp
	include/fcppt/math/matrix/detail/determinant.hpp
	include/fcppt/math/matrix/detail/index_absolute.hpp
	include/fcppt/math/matrix/detail/init_storage.hpp
	include/fcppt/math/matrix/detail/row_view_decl.hpp
	include/fcppt/math/matrix/detail/row_view_fwd.hpp
	include/fcppt/math/matrix/detail/row_view_impl.hpp
	include/fcppt/math/matrix/determinant.hpp
	include/fcppt/math/matrix/exponential_pade.hpp
	include/fcppt/math/matrix/has_dim.hpp
	include/fcppt/math/matrix/identity.hpp
	include/fcppt/math/matrix/index.hpp
	include/fcppt/math/matrix/index_decl.hpp
	include/fcppt/math/matrix/index_fwd.hpp
	include/fcppt/math/matrix/index_impl.hpp
	include/fcppt/math/matrix/infinity_norm.hpp
	include/fcppt/math/matrix/init.hpp
	include/fcppt/math/matrix/inverse.hpp
	include/fcppt/math/matrix/is_matrix.hpp
	include/fcppt/math/matrix/logarithm.hpp
	include/fcppt/math/matrix/object.hpp
	include/fcppt/math/matrix/object_decl.hpp
	include/fcppt/math/matrix/object_fwd.hpp
	include/fcppt/math/matrix/object_impl.hpp
	include/fcppt/math/matrix/output.hpp
	include/fcppt/math/matrix/rotation_2d.hpp
	include/fcppt/math/matrix/rotation_axis.hpp
	include/fcppt/math/matrix/rotation_x.hpp
	include/fcppt/math/matrix/rotation_y.hpp
	include/fcppt/math/matrix/rotation_z.hpp
	include/fcppt/math/matrix/row.hpp
	include/fcppt/math/matrix/row_type.hpp
	include/fcppt/math/matrix/scaling.hpp
	include/fcppt/math/matrix/sqrt.hpp
	include/fcppt/math/matrix/static.hpp
	include/fcppt/math/matrix/static_fwd.hpp
	include/fcppt/math/matrix/static_storage.hpp
	include/fcppt/math/matrix/std_hash.hpp
	include/fcppt/math/matrix/structure_cast.hpp
	include/fcppt/math/matrix/to_static.hpp
	include/fcppt/math/matrix/to_static_fwd.hpp
	include/fcppt/math/matrix/transform_direction.hpp
	include/fcppt/math/matrix/transform_point.hpp
	include/fcppt/math/matrix/translation.hpp
	include/fcppt/math/matrix/transpose.hpp
	include/fcppt/math/matrix/vector.hpp
	include/fcppt/math/mod.hpp
	include/fcppt/math/next_power_of_2.hpp
	include/fcppt/math/pi.hpp
	include/fcppt/math/rad_to_deg.hpp
	include/fcppt/math/size_type.hpp
	include/fcppt/math/sphere/circle.hpp
	include/fcppt/math/sphere/circle_fwd.hpp
	include/fcppt/math/sphere/comparison.hpp
	include/fcppt/math/sphere/intersects.hpp
	include/fcppt/math/sphere/object.hpp
	include/fcppt/math/sphere/object_decl.hpp
	include/fcppt/math/sphere/object_fwd.hpp
	include/fcppt/math/sphere/object_impl.hpp
	include/fcppt/math/sphere/output.hpp
	include/fcppt/math/static_size.hpp
	include/fcppt/math/static_storage.hpp
	include/fcppt/math/step.hpp
	include/fcppt/math/twopi.hpp
	include/fcppt/math/vector/angle_between.hpp
	include/fcppt/math/vector/angle_between_cast.hpp
	include/fcppt/math/vector/arithmetic.hpp
	include/fcppt/math/vector/atan2.hpp
	include/fcppt/math/vector/ceil_div_signed.hpp
	include/fcppt/math/vector/comparison.hpp
	include/fcppt/math/vector/componentwise_equal.hpp
	include/fcppt/math/vector/construct.hpp
	include/fcppt/math/vector/cross.hpp
	include/fcppt/math/vector/dim.hpp
	include/fcppt/math/vector/distance.hpp
	include/fcppt/math/vector/dot.hpp
	include/fcppt/math/vector/fill.hpp
	include/fcppt/math/vector/has_dim.hpp
	include/fcppt/math/vector/hypersphere_to_cartesian.hpp
	include/fcppt/math/vector/init.hpp
	include/fcppt/math/vector/input.hpp
	include/fcppt/math/vector/is_vector.hpp
	include/fcppt/math/vector/length.hpp
	include/fcppt/math/vector/length_square.hpp
	include/fcppt/math/vector/map.hpp
	include/fcppt/math/vector/mod.hpp
	include/fcppt/math/vector/narrow_cast.hpp
	include/fcppt/math/vector/normalize.hpp
	include/fcppt/math/vector/null.hpp
	include/fcppt/math/vector/object.hpp
	include/fcppt/math/vector/object_decl.hpp
	include/fcppt/math/vector/object_fwd.hpp
	include/fcppt/math/vector/object_impl.hpp
	include/fcppt/math/vector/output.hpp
	include/fcppt/math/vector/point_rotate.hpp
	include/fcppt/math/vector/signed_angle_between.hpp
	include/fcppt/math/vector/signed_angle_between_cast.hpp
	include/fcppt/math/vector/static.hpp
	include/fcppt/math/vector/static_fwd.hpp
	include/fcppt/math/vector/std_hash.hpp
	include/fcppt/math/vector/structure_cast.hpp
	include/fcppt/math/vector/to_dim.hpp
	include/fcppt/math/vector/to_signed.hpp
	include/fcppt/math/vector/to_unsigned.hpp
	include/fcppt/math/vector/unit.hpp
	include/fcppt/micro_version.hpp
	include/fcppt/minor_version.hpp
	include/fcppt/move_if.hpp
	include/fcppt/move_if_rvalue.hpp
	include/fcppt/move_iterator_if_rvalue.hpp
	include/fcppt/mpl/all_of.hpp
	include/fcppt/mpl/append.hpp
	include/fcppt/mpl/ceil_div.hpp
	include/fcppt/mpl/contains_if.hpp
	include/fcppt/mpl/copy.hpp
	include/fcppt/mpl/detail/flatten.hpp
	include/fcppt/mpl/detail/for_each_break.hpp
	include/fcppt/mpl/detail/print.hpp
	include/fcppt/mpl/detail/print_one.hpp
	include/fcppt/mpl/detail/runtime_index.hpp
	include/fcppt/mpl/enum_range.hpp
	include/fcppt/mpl/enum_range_start_end.hpp
	include/fcppt/mpl/flatten.hpp
	include/fcppt/mpl/flatten_tpl.hpp
	include/fcppt/mpl/for_each.hpp
	include/fcppt/mpl/for_each_break.hpp
	include/fcppt/mpl/implication.hpp
	include/fcppt/mpl/index_of.hpp
	include/fcppt/mpl/inner.hpp
	include/fcppt/mpl/integral_cast.hpp
	include/fcppt/mpl/integral_cast_tpl.hpp
	include/fcppt/mpl/invoke_on.hpp
	include/fcppt/mpl/max_value.hpp
	include/fcppt/mpl/numeric_max.hpp
	include/fcppt/mpl/partial_sums.hpp
	include/fcppt/mpl/print.hpp
	include/fcppt/mpl/runtime_index.hpp
	include/fcppt/mpl/value_type.hpp
	include/fcppt/narrow.hpp
	include/fcppt/no_init.hpp
	include/fcppt/no_init_fwd.hpp
	include/fcppt/nonassignable.hpp
	include/fcppt/noncopyable.hpp
	include/fcppt/optional/alternative.hpp
	include/fcppt/optional/apply.hpp
	include/fcppt/optional/assign.hpp
	include/fcppt/optional/bind.hpp
	include/fcppt/optional/cat.hpp
	include/fcppt/optional/combine.hpp
	include/fcppt/optional/comparison.hpp
	include/fcppt/optional/const_cast.hpp
	include/fcppt/optional/copy_value.hpp
	include/fcppt/optional/deref.hpp
	include/fcppt/optional/detail/cast.hpp
	include/fcppt/optional/detail/check.hpp
	include/fcppt/optional/detail/has_value_all.hpp
	include/fcppt/optional/dynamic_cast.hpp
	include/fcppt/optional/filter.hpp
	include/fcppt/optional/from.hpp
	include/fcppt/optional/from_pointer.hpp
	include/fcppt/optional/is_object.hpp
	include/fcppt/optional/join.hpp
	include/fcppt/optional/map.hpp
	include/fcppt/optional/maybe.hpp
	include/fcppt/optional/maybe_multi.hpp
	include/fcppt/optional/maybe_void.hpp
	include/fcppt/optional/maybe_void_multi.hpp
	include/fcppt/optional/object.hpp
	include/fcppt/optional/object_decl.hpp
	include/fcppt/optional/object_fwd.hpp
	include/fcppt/optional/object_impl.hpp
	include/fcppt/optional/output.hpp
	include/fcppt/optional/reference.hpp
	include/fcppt/optional/reference_fwd.hpp
	include/fcppt/optional/static_cast.hpp
	include/fcppt/optional/to_exception.hpp
	include/fcppt/optional_std_string.hpp
	include/fcppt/optional_std_string_fwd.hpp
	include/fcppt/optional_string.hpp
	include/fcppt/optional_string_fwd.hpp
	include/fcppt/preprocessor/const.hpp
	include/fcppt/preprocessor/detail/disable_vc_warning.hpp
	include/fcppt/preprocessor/detail/function.hpp
	include/fcppt/preprocessor/detail/message.hpp
	include/fcppt/preprocessor/detail/stringize.hpp
	include/fcppt/preprocessor/disable_gcc_warning.hpp
	include/fcppt/preprocessor/disable_vc_warning.hpp
	include/fcppt/preprocessor/file.hpp
	include/fcppt/preprocessor/fixme.hpp
	include/fcppt/preprocessor/function.hpp
	include/fcppt/preprocessor/message.hpp
	include/fcppt/preprocessor/pop_warning.hpp
	include/fcppt/preprocessor/pragma.hpp
	include/fcppt/preprocessor/pure.hpp
	include/fcppt/preprocessor/push_warning.hpp
	include/fcppt/preprocessor/stringize.hpp
	include/fcppt/preprocessor/todo.hpp
	include/fcppt/preprocessor/warn_unused_result.hpp
	include/fcppt/preprocessor/warning.hpp
	include/fcppt/random/distribution/base_type.hpp
	include/fcppt/random/distribution/base_value.hpp
	include/fcppt/random/distribution/basic.hpp
	include/fcppt/random/distribution/basic_decl.hpp
	include/fcppt/random/distribution/basic_fwd.hpp
	include/fcppt/random/distribution/basic_impl.hpp
	include/fcppt/random/distribution/decorated_value.hpp
	include/fcppt/random/distribution/make_basic.hpp
	include/fcppt/random/distribution/parameters/make_uniform_enum.hpp
	include/fcppt/random/distribution/parameters/make_uniform_enum_advanced.hpp
	include/fcppt/random/distribution/parameters/make_uniform_indices.hpp
	include/fcppt/random/distribution/parameters/make_uniform_indices_advanced.hpp
	include/fcppt/random/distribution/parameters/normal.hpp
	include/fcppt/random/distribution/parameters/normal_decl.hpp
	include/fcppt/random/distribution/parameters/normal_fwd.hpp
	include/fcppt/random/distribution/parameters/normal_impl.hpp
	include/fcppt/random/distribution/parameters/uniform_int.hpp
	include/fcppt/random/distribution/parameters/uniform_int_decl.hpp
	include/fcppt/random/distribution/parameters/uniform_int_fwd.hpp
	include/fcppt/random/distribution/parameters/uniform_int_impl.hpp
	include/fcppt/random/distribution/parameters/uniform_int_wrapper.hpp
	include/fcppt/random/distribution/parameters/uniform_int_wrapper_fwd.hpp
	include/fcppt/random/distribution/parameters/uniform_real.hpp
	include/fcppt/random/distribution/parameters/uniform_real_decl.hpp
	include/fcppt/random/distribution/parameters/uniform_real_fwd.hpp
	include/fcppt/random/distribution/parameters/uniform_real_impl.hpp
	include/fcppt/random/generator/basic_pseudo_decl.hpp
	include/fcppt/random/generator/basic_pseudo_fwd.hpp
	include/fcppt/random/generator/basic_pseudo_impl.hpp
	include/fcppt/random/generator/minstd_rand.hpp
	include/fcppt/random/generator/minstd_rand_decl.hpp
	include/fcppt/random/generator/minstd_rand_fwd.hpp
	include/fcppt/random/generator/minstd_rand_impl.hpp
	include/fcppt/random/generator/mt19937.hpp
	include/fcppt/random/generator/mt19937_decl.hpp
	include/fcppt/random/generator/mt19937_fwd.hpp
	include/fcppt/random/generator/mt19937_impl.hpp
	include/fcppt/random/generator/seed_from_chrono.hpp
	include/fcppt/random/make_variate.hpp
	include/fcppt/random/variate.hpp
	include/fcppt/random/variate_decl.hpp
	include/fcppt/random/variate_fwd.hpp
	include/fcppt/random/variate_impl.hpp
	include/fcppt/random/wrapper/make_uniform_container.hpp
	include/fcppt/random/wrapper/make_uniform_container_advanced.hpp
	include/fcppt/random/wrapper/uniform_container.hpp
	include/fcppt/random/wrapper/uniform_container_decl.hpp
	include/fcppt/random/wrapper/uniform_container_fwd.hpp
	include/fcppt/random/wrapper/uniform_container_impl.hpp
	include/fcppt/range_hash.hpp
	include/fcppt/range_hash_decl.hpp
	include/fcppt/range_hash_fwd.hpp
	include/fcppt/range_hash_impl.hpp
	include/fcppt/reference.hpp
	include/fcppt/reference_comparison.hpp
	include/fcppt/reference_decl.hpp
	include/fcppt/reference_fwd.hpp
	include/fcppt/reference_hash.hpp
	include/fcppt/reference_hash_decl.hpp
	include/fcppt/reference_hash_fwd.hpp
	include/fcppt/reference_hash_impl.hpp
	include/fcppt/reference_impl.hpp
	include/fcppt/reference_output.hpp
	include/fcppt/reference_std_hash.hpp
	include/fcppt/reference_to_base.hpp
	include/fcppt/runtime_enum.hpp
	include/fcppt/scoped_state_machine.hpp
	include/fcppt/scoped_state_machine_decl.hpp
	include/fcppt/scoped_state_machine_fwd.hpp
	include/fcppt/scoped_state_machine_impl.hpp
	include/fcppt/shared_ptr.hpp
	include/fcppt/shared_ptr_decl.hpp
	include/fcppt/shared_ptr_fwd.hpp
	include/fcppt/shared_ptr_impl.hpp
	include/fcppt/signal/auto_connection.hpp
	include/fcppt/signal/auto_connection_container.hpp
	include/fcppt/signal/auto_connection_fwd.hpp
	include/fcppt/signal/base.hpp
	include/fcppt/signal/base_decl.hpp
	include/fcppt/signal/base_fwd.hpp
	include/fcppt/signal/base_impl.hpp
	include/fcppt/signal/connection.hpp
	include/fcppt/signal/connection_fwd.hpp
	include/fcppt/signal/detail/concrete_connection.hpp
	include/fcppt/signal/detail/concrete_connection_impl.hpp
	include/fcppt/signal/detail/connection_base.hpp
	include/fcppt/signal/detail/enable_if_void.hpp
	include/fcppt/signal/impl/connection.hpp
	include/fcppt/signal/object.hpp
	include/fcppt/signal/object_decl.hpp
	include/fcppt/signal/object_fwd.hpp
	include/fcppt/signal/object_impl.hpp
	include/fcppt/signal/optional_auto_connection.hpp
	include/fcppt/signal/optional_auto_connection_fwd.hpp
	include/fcppt/signal/unregister/base.hpp
	include/fcppt/signal/unregister/base_decl.hpp
	include/fcppt/signal/unregister/base_fwd.hpp
	include/fcppt/signal/unregister/base_impl.hpp
	include/fcppt/signal/unregister/detail/concrete_connection.hpp
	include/fcppt/signal/unregister/detail/concrete_connection_impl.hpp
	include/fcppt/signal/unregister/function.hpp
	include/fcppt/spirit_traits/optional_basic.hpp
	include/fcppt/spirit_traits/variant_basic.hpp
	include/fcppt/static_pointer_cast.hpp
	include/fcppt/string.hpp
	include/fcppt/string_conv_locale.hpp
	include/fcppt/strong_typedef.hpp
	include/fcppt/strong_typedef_arithmetic.hpp
	include/fcppt/strong_typedef_assignment.hpp
	include/fcppt/strong_typedef_bitwise.hpp
	include/fcppt/strong_typedef_comparison.hpp
	include/fcppt/strong_typedef_construct_cast.hpp
	include/fcppt/strong_typedef_decl.hpp
	include/fcppt/strong_typedef_fwd.hpp
	include/fcppt/strong_typedef_hash.hpp
	include/fcppt/strong_typedef_hash_decl.hpp
	include/fcppt/strong_typedef_hash_fwd.hpp
	include/fcppt/strong_typedef_hash_impl.hpp
	include/fcppt/strong_typedef_impl.hpp
	include/fcppt/strong_typedef_input.hpp
	include/fcppt/strong_typedef_operators.hpp
	include/fcppt/strong_typedef_output.hpp
	include/fcppt/strong_typedef_std_hash.hpp
	include/fcppt/symbol/class.hpp
	include/fcppt/symbol/export.hpp
	include/fcppt/symbol/export_class_instantiation.hpp
	include/fcppt/symbol/export_function_instantiation.hpp
	include/fcppt/symbol/import.hpp
	include/fcppt/tag.hpp
	include/fcppt/tag_fwd.hpp
	include/fcppt/tag_type.hpp
	include/fcppt/tag_value.hpp
	include/fcppt/text.hpp
	include/fcppt/time/ctime.hpp
	include/fcppt/time/exception.hpp
	include/fcppt/time/gmtime.hpp
	include/fcppt/time/impl/exception.hpp
	include/fcppt/time/localtime.hpp
	include/fcppt/time/output_tm.hpp
	include/fcppt/time/std_time.hpp
	include/fcppt/to_std_string.hpp
	include/fcppt/to_std_string_locale.hpp
	include/fcppt/to_std_wstring.hpp
	include/fcppt/to_std_wstring_locale.hpp
	include/fcppt/type_iso/boost_units.hpp
	include/fcppt/type_iso/decorate.hpp
	include/fcppt/type_iso/detail/decorate.hpp
	include/fcppt/type_iso/detail/is_terminal.hpp
	include/fcppt/type_iso/detail/terminal_tag.hpp
	include/fcppt/type_iso/detail/undecorate.hpp
	include/fcppt/type_iso/detail/undecorated_type.hpp
	include/fcppt/type_iso/enum.hpp
	include/fcppt/type_iso/strong_typedef.hpp
	include/fcppt/type_iso/transform.hpp
	include/fcppt/type_iso/transform_fwd.hpp
	include/fcppt/type_iso/undecorate.hpp
	include/fcppt/type_iso/undecorated_type.hpp
	include/fcppt/type_name.hpp
	include/fcppt/type_name_from_index.hpp
	include/fcppt/type_name_from_info.hpp
	include/fcppt/type_traits/detail/function_pointer_to_reference.hpp
	include/fcppt/type_traits/detail/has_const_iterator.hpp
	include/fcppt/type_traits/detail/has_iterator.hpp
	include/fcppt/type_traits/detail/is_iterator.hpp
	include/fcppt/type_traits/function_pointer_to_reference.hpp
	include/fcppt/type_traits/generate_has_member_function.hpp
	include/fcppt/type_traits/generate_has_type.hpp
	include/fcppt/type_traits/has_const_iterator.hpp
	include/fcppt/type_traits/has_iterator.hpp
	include/fcppt/type_traits/is_bidirectional_iterator.hpp
	include/fcppt/type_traits/is_float_or_double.hpp
	include/fcppt/type_traits/is_forward_iterator.hpp
	include/fcppt/type_traits/is_input_iterator.hpp
	include/fcppt/type_traits/is_iterable.hpp
	include/fcppt/type_traits/is_iterator.hpp
	include/fcppt/type_traits/is_iterator_of_category.hpp
	include/fcppt/type_traits/is_output_iterator.hpp
	include/fcppt/type_traits/is_random_access_iterator.hpp
	include/fcppt/type_traits/is_raw_pointer.hpp
	include/fcppt/type_traits/is_std_array.hpp
	include/fcppt/type_traits/is_std_tuple.hpp
	include/fcppt/type_traits/is_string.hpp
	include/fcppt/type_traits/remove_cv_ref.hpp
	include/fcppt/unique_ptr.hpp
	include/fcppt/unique_ptr_decl.hpp
	include/fcppt/unique_ptr_fwd.hpp
	include/fcppt/unique_ptr_impl.hpp
	include/fcppt/unique_ptr_to_base.hpp
	include/fcppt/unique_ptr_to_const.hpp
	include/fcppt/variant/apply_binary.hpp
	include/fcppt/variant/apply_ternary.hpp
	include/fcppt/variant/apply_unary.hpp
	include/fcppt/variant/compare.hpp
	include/fcppt/variant/detail/assert_type.hpp
	include/fcppt/variant/detail/disable_object.hpp
	include/fcppt/variant/detail/get_exn_impl.hpp
	include/fcppt/variant/detail/index_of.hpp
	include/fcppt/variant/detail/nothrow_move_assignable.hpp
	include/fcppt/variant/detail/nothrow_move_constructible.hpp
	include/fcppt/variant/detail/type_info.hpp
	include/fcppt/variant/equal.hpp
	include/fcppt/variant/exception.hpp
	include/fcppt/variant/get_exn.hpp
	include/fcppt/variant/get_unsafe.hpp
	include/fcppt/variant/holds_type.hpp
	include/fcppt/variant/impl/exception.hpp
	include/fcppt/variant/impl/invalid_get.hpp
	include/fcppt/variant/invalid_get.hpp
	include/fcppt/variant/is_object.hpp
	include/fcppt/variant/less.hpp
	include/fcppt/variant/match.hpp
	include/fcppt/variant/not_equal.hpp
	include/fcppt/variant/object.hpp
	include/fcppt/variant/object_decl.hpp
	include/fcppt/variant/object_fwd.hpp
	include/fcppt/variant/object_impl.hpp
	include/fcppt/variant/output.hpp
	include/fcppt/variant/size_type.hpp
	include/fcppt/variant/to_optional.hpp
	include/fcppt/variant/to_optional_ref.hpp
	include/fcppt/variant/type_info.hpp
	include/fcppt/variant/variadic.hpp
	include/fcppt/variant/variadic_fwd.hpp
	include/fcppt/version_int.hpp
	include/fcppt/version_integral_c.hpp
	include/fcppt/version_string.hpp
	include/fcppt/weak_ptr.hpp
	include/fcppt/weak_ptr_decl.hpp
	include/fcppt/weak_ptr_fwd.hpp
	include/fcppt/weak_ptr_impl.hpp
	include/fcppt/widen.hpp
)

fcppt_utils_append_source_dir(
	"${FCPPT_DOC_FILES}"
	FCPPT_DOC_FILES_ABS
)

set(
	HTML_INDEX_OUTPUT
	${DOC_OUTPUT}/html/index.html
)

add_custom_command(
	OUTPUT "${HTML_INDEX_OUTPUT}"
	COMMAND ${DOXYGEN_EXECUTABLE}
	DEPENDS
	${FCPPT_DOC_FILES_ABS}
	WORKING_DIRECTORY "${DOC_OUTPUT}"
)

add_custom_target(
	doc
	ALL
	SOURCES
	${HTML_INDEX_OUTPUT}
)

fcppt_utils_install_doc_dir(
	INSTALL_DOC_DIR
)

install(
	DIRECTORY
	"${DOC_OUTPUT}/html"
	DESTINATION
	"${INSTALL_DOC_DIR}"
)
